const fs = require('fs');
const path = require('path');
const util = require('util');

const readdirAsync = util.promisify(fs.readdir);

async function folderFilesRequire(folderPath) {
  // 读取文件夹中的所有文件
  const files = await readdirAsync(folderPath);
  for(let i = 0; i < files.length; i++) {
    // 获取文件的完整路径
    const file = files[i];
    const filePath = path.join(folderPath, file);

    // 检查文件是否为目录
    if (fs.statSync(filePath).isDirectory()) {
      // 如果是目录，则可以递归调用该方法
      await folderFilesRequire(filePath);
    } else {
      require(filePath);
    }
  }
}

module.exports = folderFilesRequire;